b4136b6d6e40175b34dffeba560c9f4cb2d64b79,java/src/org/broadinstitute/sting/playground/gatk/walkers/MendelianInheritanceWalker.java,MendelianInheritanceWalker,map,#RefMetaDataTracker#char#LocusContext#,24

Before Change


		AllelicVariant dad = (rodSAMPileup)rodData.lookup("father", null);
		AllelicVariant kid = (rodSAMPileup)rodData.lookup("daughter", null);
		
		if ( ! hasCall(mom)  || ! hasCall(dad) || ! hasCall(kid) ) return t; // at least one person is not called; nothing to do, bail out
			
		// proceed only if we got confident calls
			
        t.assessed_loci = 1;
			
		if ( ! mom.isBiallelic() || ! dad.isBiallelic() || ! kid.isBiallelic() ) {
			t.non_biallelic = 1; // we currently ignore non-biallelic sites
			return t;
		}
		
		// ok, we got a call and it is biallelic (at most)
		
		if ( mom.isReference() && dad.isReference() && kid.isReference() ) { // got all refs, we are done
			t.consistent_ref = 1;
			return t;
		}

		// by now we know that there's a SNP
		
		String kid_allele_1 = kid.getGenotype().get(0);
		String kid_allele_2 = kid.getGenotype().get(1);
		List<String> mom_alleles = mom.getGenotype();
		List<String> dad_alleles = dad.getGenotype();
		
		// kid must have one allele from mom and one allele from dad if it's not X chromosome!
		
		if ( mom_alleles.contains(kid_allele_1) && dad_alleles.contains(kid_allele_2) ||
				mom_alleles.contains(kid_allele_2) && dad_alleles.contains(kid_allele_1) ) {
			t.consistent_snp = 1;
			
			logger.info("consistent SNP at "+context.getLocation() + 
					"("+ref+") " + mom_alleles.get(0)+"/" +mom_alleles.get(1) + "  " +
					dad_alleles.get(0)+"/" +dad_alleles.get(1) + "  " +
					kid_allele_1+"/" +kid_allele_2  
					);

After Change


		AllelicVariant dad = (rodSAMPileup)rodData.lookup("father", null);
		AllelicVariant kid = (rodSAMPileup)rodData.lookup("daughter", null);
		
		if ( hasCall(mom)) t.mom_assessed = 1;
		if ( hasCall(dad)) t.dad_assessed = 1;
		if ( hasCall(kid)) t.kid_assessed = 1;